package com.ideaaedi.springcloud.jd.user.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ideaaedi.springcloud.jd.commonds.entity.PageInfo;
import com.ideaaedi.springcloud.jd.commonds.entity.user.po.SysPostPO;
import com.ideaaedi.springcloud.jd.commonds.entity.user.vo.req.SysPostAddReqVO;
import com.ideaaedi.springcloud.jd.commonds.entity.user.vo.req.SysPostListReqVO;
import com.ideaaedi.springcloud.jd.commonds.entity.user.vo.req.SysPostUpdateReqVO;
import com.ideaaedi.springcloud.jd.commonds.entity.user.vo.resp.SysPostDetailRespVO;
import com.ideaaedi.springcloud.jd.commonds.entity.user.vo.resp.SysPostListRespVO;

/**
 * <p>
 * 职位 服务类
 * </p>
 *
 * @author <font size = "20" color = "#3CAA3C"><a href="https://gitee.com/JustryDeng">JustryDeng</a></font> <img src="https://gitee.com/JustryDeng/shared-files/raw/master/JustryDeng/avatar.jpg" />
 * @since 2021.0.1.A
 */
public interface SysPostService extends IService<SysPostPO> {

    /**
     * 增
     *
     * @param req 参数
     *
     * @return 新增的数据详情
     */
    SysPostDetailRespVO add(SysPostAddReqVO req);

    /**
     * 删
     *
     * @param id 要删除数据的id
     *
     * @return 删除了的数据详情
     */
    SysPostDetailRespVO delete(Long id);

    /**
     * 改
     *
     * @param req 参数
     *
     * @return 修改后的数据详情
     */
    SysPostDetailRespVO update(SysPostUpdateReqVO req);

    /**
     * 查详情
     *
     * @param id 要查询数据的id
     *
     * @return 数据详情
     */
    SysPostDetailRespVO detail(Long id);

    /**
     * 查列表
     *
     * @param req 参数
     *
     * @return 数据列表
     */
    PageInfo<SysPostListRespVO> list(SysPostListReqVO req);
}
